home *** CD-ROM | disk | FTP | other *** search
- Background
- ==========
-
- 'libusbmuxd' makes it really simple to talk to a running 'usbmuxd' and
- hides all the details for you. There are two function calls:
-
- usbmuxd_scan()
- --------------
-
- This returns a list of all available iPhone-like devices that are
- available for talking to. The returned array contains the USB
- product_id, hex formatted serial_number of any iPhones/iTouches and a
- non-descript 'handle' for all those devices that are within range (as
- of March 2009, that means a device directly plugged into the
- computer's USB port).
-
- Once you have found the device you want to communicate with, take its
- 'handle' and pass this to usbmuxd_connect().
-
- usbmuxd_connect()
- -----------------
-
- This takes a handle, a destination port number and tries to setup
- a proxy a connection. It returns a file-descriptor which you should
- be able to read(), write() and select() on like any other active network
- socket connection.
-
-
- Technical details
- =================
-
- When usbmuxd is running (normally started, or stopped as a result of
- 'udev' auto-insertion messages), it provides a socket interface in
- '/var/run/usbmuxd' that is designed to be compatible with the socket
- interface that is provided on MacOSX.
-
- The structures for communicating over this device are documented
- in the 'usbmuxd-proto.h', but you shouldn't need to view them
- directly if you are using the libusbmuxd.so library for easy access.
-
-
- Example
- =======
-
- #include <usbmuxd.h>
-
- ...
-
- gcc -o leetphone leetphone.c -lusbmuxd
-
-